
/**
 * Copyright (c) subnew
 * Licensed under the GPL;
 * @email:joseanluo@gmail.com
 * @Title: SecurityUtils.java
 * @Package com.subnew.mango.frame.utils
 */
package com.subnew.mango.frame.utils;

import com.subnew.mango.frame.constant.Globals;
import com.subnew.mango.frame.model.common.SessionInfo;
import com.subnew.mango.frame.utils.browser.BrowserUtil;
import com.subnew.mango.frame.utils.web.SpringmvcContextHolderUtil;
import com.subnew.mango.modules.sys.entity.SysOperator;

/**
 * 安全工具类
 * @author JoseanLuo  
 * @date  2014年12月21日 下午6:37:14
 * @version V1.0 
 */
public class SecurityUtils {
	
	
	

	/**
	 * 
	* 把用户信息放入session中
	* @param operator  
	* @Title: putOperatorToSession
	* @author JoseanLuo  
	* @date 2014年12月21日 下午6:58:06
	* @version V1.0
	 */
	public static void putOperatorToSession(SysOperator operator){
	   if(null!=operator){
        	SessionInfo sessionInfo= sysOperatorToSessionInfo(operator);
	       SpringmvcContextHolderUtil.getSession().setAttribute(Globals.SESSION_KEY_OF_USER, sessionInfo);
		
	     }
		
	}
	
	
	/**
	 * 
	* 把操作用户信息转化为sessionInfo信息
	* @param operator 
	* @return  SessinInfo 
	* @Title: sysOperatorToSessionInfo
	* @author JoseanLuo  
	* @date 2014年12月21日 下午6:44:08
	* @version V1.0
	 */
	public static SessionInfo sysOperatorToSessionInfo(SysOperator operator){
		SessionInfo info= new SessionInfo();
		info.setLoginName(operator.getLoginname());
		info.setUserId(operator.getId());
		info.setUserName(operator.getName());
		info.setId(SpringmvcContextHolderUtil.getSession().getId());
		info.setIp(BrowserUtil.getIpAddr(SpringmvcContextHolderUtil.getRequest()));
		return info;
	}

}
